// 文件IO 写文件 

#include <stdio.h>
#include <string.h>

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

#include <unistd.h>

int main(int argc, char *argv[])
{
    if (argc < 3) {
        printf("请传入要写入的文件路径及内容\n");
        return -1;
    }
    int fd = open(argv[1], O_RDWR|O_CREAT|O_APPEND, 0664);

    if (-1 == fd) {
        perror("open");
        return -1;
    }

    // 向一个文件中写入100字节内容，
    // 文件不存在则创建， 有则追加
    ssize_t res;
    char buf[100] = {0};
    strncpy(buf, argv[2], 100);
    
    res = write(fd, buf, strlen(buf));
    
    if (res == -1) {
        perror("write");
        return -1;
    }

    printf("%s\n", buf);

    if (-1 == close(fd)) {
        perror("close");
        return -1;
    }

    return 0;
}
